Summary: Ex7_BLR02
Showing the CS-TRS Ex7_BLR02:
Functions: from cons s head 2nd take 0 nil sel
Constructors: cons s 0 nil
Variables: X XS N
Arities:
ar(from) = 1
ar(cons) = 2
ar(s) = 1
ar(head) = 1
ar(2nd) = 1
ar(take) = 2
ar(0) = 0
ar(nil) = 0
ar(sel) = 2
Replacement map:
µ(from)={1}(cons,[1])
µ(cons)={1}
µ(s)={1}
µ(head)={1}
µ(2nd)={1}
µ(take)={1,2}
µ(0)={}
µ(nil)={}
µ(sel)={1,2}
Rules: (file Ex7_BLR02)
from(X) -> cons(X,from(s(X)))
head(cons(X,XS)) -> X
2nd(cons(X,XS)) -> head(XS)
take(0,XS) -> nil
take(s(N),cons(X,XS)) -> cons(X,take(N,XS))
sel(0,cons(X,XS)) -> X
sel(s(N),cons(X,XS)) -> sel(N,XS)
The CS-TRS in OBJ format (file Ex7_BLR02.obj):
obj Ex7_BLR02 is
sort S .
op from : S -> S .
op cons : S S -> S [strat (1 0)] .
op s : S -> S .
op head : S -> S .
op 2nd : S -> S .
op take : S S -> S .
op 0 : -> S .
op nil : -> S .
op sel : S S -> S .
vars X XS N : S .
eq from(X) = cons(X,from(s(X))) .
eq head(cons(X,XS)) = X .
eq 2nd(cons(X,XS)) = head(XS) .
eq take(0,XS) = nil .
eq take(s(N),cons(X,XS)) = cons(X,take(N,XS)) .
eq sel(0,cons(X,XS)) = X .
eq sel(s(N),cons(X,XS)) = sel(N,XS) .
endo
Negative results
-
The µ-termination of Ex7_BLR02 cannot be proved by using Lucas' transformation.
The TRS Ex7_BLR02_L:
from(X) -> cons(X)
head(cons(X)) -> X
2nd(cons(X)) -> head(XS)
take(0,XS) -> nil
take(s(N),cons(X)) -> cons(X)
sel(0,cons(X)) -> X
sel(s(X),cons(Y)) -> sel(X,Z)
contains extra variables.
Positive results
-
The µ-termination of Ex7_BLR02 can be proved by using
Zantema's transformation. The TRS Ex7_BLR02_Z:
from(X) -> cons(X,n__from(s(X)))
head(cons(X,XS)) -> X
2nd(cons(X,XS)) -> head(activate(XS))
take(0,XS) -> nil
take(s(N),cons(X,XS)) -> cons(X,n__take(N,activate(XS)))
sel(0,cons(X,XS)) -> X
sel(s(N),cons(X,XS)) -> sel(N,activate(XS))
from(X) -> n__from(X)
take(X1,X2) -> n__take(X1,X2)
activate(n__from(X)) -> from(X)
activate(n__take(X1,X2)) -> take(X1,X2)
activate(X) -> X
is terminating (use RPOS with AProVE).
-
By [GM04, Theorem 11], the µ-termination of Ex1_Luc02b can also
be proved by using Ferreira and Ribeiro's transformation
(but no concrete proof has been reported yet).
-
By [GM04, Theorem 22], the µ-termination of Ex1_Luc02b can also
be proved by using Giesl and Middeldorp's transformation
(but no concrete proof has been reported yet).
-
The µ-termination of Ex7_BLR02 can be proved by CSRPO together
with the following [BLR02, Example
7] and automatically computed by
MuTerm:
- marking map:
m(cons,2)=m(_cons,2)={from}
- precedence:
2nd > head, from
take > from, nil, cons
sel > from > cons, s, _from
- status:
st(take)=st(sel)=lex;
st(f)=mul for all other symbols f.
-
The µ-termination of Ex7_BLR02 can be proved by using a polynomial
interpretation over Q_1:
[from](x) = 2x + 4
[cons](x,y) = x + y/4
[s](x) = 2x + 2
[head](x) = x + 1
[2nd](x) = 4x + 2
[take](x,y) = x + y + 1
[0] = 0
[nil] = 0
[sel](x,y) = (x^2)y + x + y + 1